home *** CD-ROM | disk | FTP | other *** search
- 10 'ALBMPAGE.BAS -- a demonstration of how to construct a stamp album
- 20 ' page using BASIC and a Gemini 10x printer.
- 30 ' Read the file ALBMPAGE.DOC for a more detailed
- 40 ' explanation.
- 50 'Written by William F. Sharpe, Linn's Stamp News columnist.
- 60 '
- 100 TOP$ = "δτττττττττττττττ∞"
- 110 SIDES$ = "Θ Ω"
- 120 BOTTOM$ = "φΦΦΦΦΦΦΦΦΦΦΦΦΦΦΦε"
- 130 ESC$ =CHR$(27)
- 140 TWELVELPI$ =ESC$+CHR$(51)+CHR$(12) :CONDENSED$ =CHR$(15)
- 150 RS$ =ESC$+CHR$(64) :PAGEFEED$ =CHR$(12)
- 160 PAGELENGTH$=ESC$+CHR$(67)+CHR$(0)+CHR$(11)
- 170 RTMARGIN$ =ESC$+CHR$(81)+CHR$(135)
- 180 ITALICS$ =ESC$+CHR$(52) :ENDITALICS$=ESC$+CHR$(52)
- 190 UNDERLINE$=ESC$+CHR$(45)+CHR$(1) :ENDUL$=ESC$+CHR$(45)+CHR$(0)
- 200 KEY OFF : CLS 'Turn off F-key listing, clear screen
- 210 WIDTH "LPT1:",255
- 220 ONEWAY$ =ESC$+CHR$(85)+CHR$(1)
- 230 DIM STAMP(6), CATNO$(6,6)
- 240 PRINT "What heading do you want for this page";
- 250 INPUT HEADING$
- 260 INPUT "How many rows of stamps are on this page(1-6)";ROW
- 270 FOR I = 1 TO ROW
- 280 PRINT "How many stamps in row no. "; I ;"(1-6)"; : INPUT STAMP(I)
- 290 NEXT I
- 300 FOR J = 1 TO ROW
- 310 FOR K = 1 TO STAMP(J)
- 320 PRINT "What's the catalog no. for row ";J;",stamp ";K;
- 330 INPUT CATNO$(J,K)
- 340 NEXT K
- 350 NEXT J
- 360 PRINT "Align paper to top of page and turn your printer on."
- 370 INPUT "Hit <enter> key to continue"; GO$
- 380 LPRINT RS$;PAGELENGTH$;TWELVELPI$;RTMARGIN$;ONEWAY$;
- 390 VERTSP = INT((125-ROW*17)/(ROW+1) + .5)
- 400 LPRINT : LPRINT
- 410 LH = LEN(HEADING$)
- 420 LPRINT SPC(40-LH/2);ITALICS$;UNDERLINE$;HEADING$;ENDITALICS$;ENDUL$
- 430 LPRINT CONDENSED$;
- 440 VERTSP = INT((125-ROW*16)/(ROW+1) + .5)
- 450 FOR J = 1 TO ROW
- 460 FOR I = 1 TO VERTSP : LPRINT : NEXT I
- 470 HORIZSP=INT((136-STAMP(J)*17)/(STAMP(J)+1)+.5)
- 480 FOR K = 1 TO STAMP(J)
- 490 LPRINT SPC(HORIZSP);TOP$;
- 500 NEXT K
- 510 LPRINT
- 520 FOR L = 1 TO 13
- 530 FOR LL=1 TO STAMP(J)
- 540 LPRINT SPC(HORIZSP);SIDES$;
- 550 NEXT LL
- 560 LPRINT
- 570 NEXT L
- 580 FOR M = 1 TO STAMP(J)
- 590 LPRINT SPC(HORIZSP);;BOTTOM$;
- 600 NEXT M
- 610 LPRINT : LPRINT
- 620 FOR N = 1 TO STAMP(J)
- 630 LPRINT SPC(HORIZSP);SPC((17-LEN(CATNO$(J,N)))/2);CATNO$(J,N); SPC((16-LEN(CATNO$(J,N)))/2);
- 640 NEXT N
- 650 LPRINT
- 660 NEXT J
- 670 LPRINT PAGEFEED$;RS$
- 680 KEY ON :CLS 'Turn on F-key listing again, clear screen